package com.ppc.service;

import com.ppc.dto.EmployerClaimPageQueryDTO;
import com.ppc.result.PageResult;
import com.ppc.vo.EmployerClaimDetailVO;

/**
 * 雇主申诉Service
 *
 * @author LENOVO
 * @date 2023/12/20
 */
public interface EmployerClaimService {

  /**
   * 雇主分页查询申诉订单
   *
   * @param employerClaimPageQueryDTO
   * @return
   */
  PageResult claimPageQuery(EmployerClaimPageQueryDTO employerClaimPageQueryDTO);

  /**
   * 创建申诉
   *
   * @param taskId
   * @param claimType
   * @param claimReason
   */
  void createClaim(Long taskId, Integer claimType, String claimReason);

  /**
   * 查看详细信息
   *
   * @param claimId
   * @return {@link EmployerClaimDetailVO}
   */
  EmployerClaimDetailVO checkDetail(Long claimId);

  /**
   * 查看申诉消息
   *
   * @param page
   * @param pageSize
   * @return {@link PageResult}
   */
  PageResult checkClaimMessage(Integer page, Integer pageSize);

}
